package com.lagou.homeWork3;
/*
* 编程获取两个指定字符串中的最大相同子串。
* 如： s1="asdafghjka", s2="aaasdfg" 他们的最大子串为"asd"
*/
public class HomeWork2 {

    public static void show(){
        String s1 = new String("asdafghjka");
        String s2 = new String("aaasdfg");      //可改为"zzzz"测试一个字符都不包含的情况
        int sl1 = s1.length();
        int sl2 = s2.length();
        System.out.println("第一个字符串为：" + s1);
        System.out.println("第二个字符串为：" + s2);
        su:for(int x=0; x<sl2; x++) {                   //x用来判断第二个字符串是否还有数据
            for(int y=0,z=sl2-x; z!=sl2+1; y++,z++) {   //y代表从s1的第几个下标开始包含y，z代表到什么位置结束不包含z。
                String sml = s2.substring(y,z);
                if(s1.indexOf(sml)!=-1){                //提示可以替换为if(s1.contains(sml))， contains的意思是s1中是否包含sml
                    System.out.println("最长的子串为：" + sml);
                    break su;
                }
            }
            if(x == sl2-1){                               //如果连一个字符都不包含，那么输出下列语句。
                System.out.println("s1中没有包含s2中任意的子串！");
            }
        }
    }

    public static void main(String[] args) {
        HomeWork2.show();
    }
}
